#include "trade.h"
DLL_EXPORT_C_DECL void *WINAPI tCreateApi() { return ctp_sopt::CThostFtdcTraderApi::CreateFtdcTraderApi("./log/"); }
DLL_EXPORT_C_DECL void *WINAPI tCreateSpi() { return new Trade(); }
DLL_EXPORT_C_DECL void *WINAPI tGetApiVersion() { return (void*)ctp_sopt::CThostFtdcTraderApi::GetApiVersion(); }
// req
DLL_EXPORT_C_DECL void WINAPI tRelease(ctp_sopt::CThostFtdcTraderApi*api) { api->Release(); }
DLL_EXPORT_C_DECL void WINAPI tInit(ctp_sopt::CThostFtdcTraderApi*api) { api->Init(); }
DLL_EXPORT_C_DECL void WINAPI tJoin(ctp_sopt::CThostFtdcTraderApi*api) { api->Join(); }
DLL_EXPORT_C_DECL void WINAPI tRegisterFront(ctp_sopt::CThostFtdcTraderApi*api, char *pszFrontAddress) { api->RegisterFront(pszFrontAddress); }
DLL_EXPORT_C_DECL void WINAPI tRegisterNameServer(ctp_sopt::CThostFtdcTraderApi*api, char *pszNsAddress) { api->RegisterNameServer(pszNsAddress); }
DLL_EXPORT_C_DECL void WINAPI tRegisterFensUserInfo(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcFensUserInfoField * pFensUserInfo) { api->RegisterFensUserInfo(pFensUserInfo); }
DLL_EXPORT_C_DECL void WINAPI tRegisterSpi(ctp_sopt::CThostFtdcTraderApi*api, ctp_sopt::CThostFtdcTraderSpi *pSpi) { api->RegisterSpi(pSpi); }
DLL_EXPORT_C_DECL void WINAPI tSubscribePrivateTopic(ctp_sopt::CThostFtdcTraderApi*api, THOST_TE_RESUME_TYPE nResumeType) { api->SubscribePrivateTopic(nResumeType); }
DLL_EXPORT_C_DECL void WINAPI tSubscribePublicTopic(ctp_sopt::CThostFtdcTraderApi*api, THOST_TE_RESUME_TYPE nResumeType) { api->SubscribePublicTopic(nResumeType); }
DLL_EXPORT_C_DECL void WINAPI tReqAuthenticate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcReqAuthenticateField *pReqAuthenticateField, int nRequestID) { api->ReqAuthenticate(pReqAuthenticateField,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tRegisterUserSystemInfo(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcUserSystemInfoField *pUserSystemInfo) { api->RegisterUserSystemInfo(pUserSystemInfo); }
DLL_EXPORT_C_DECL void WINAPI tSubmitUserSystemInfo(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcUserSystemInfoField *pUserSystemInfo) { api->SubmitUserSystemInfo(pUserSystemInfo); }
DLL_EXPORT_C_DECL void WINAPI tReqUserLogin(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcReqUserLoginField *pReqUserLoginField, int nRequestID) { api->ReqUserLogin(pReqUserLoginField,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqUserLogout(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcUserLogoutField *pUserLogout, int nRequestID) { api->ReqUserLogout(pUserLogout,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqUserPasswordUpdate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcUserPasswordUpdateField *pUserPasswordUpdate, int nRequestID) { api->ReqUserPasswordUpdate(pUserPasswordUpdate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqTradingAccountPasswordUpdate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcTradingAccountPasswordUpdateField *pTradingAccountPasswordUpdate, int nRequestID) { api->ReqTradingAccountPasswordUpdate(pTradingAccountPasswordUpdate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqOrderInsert(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputOrderField *pInputOrder, int nRequestID) { api->ReqOrderInsert(pInputOrder,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqParkedOrderInsert(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcParkedOrderField *pParkedOrder, int nRequestID) { api->ReqParkedOrderInsert(pParkedOrder,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqParkedOrderAction(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcParkedOrderActionField *pParkedOrderAction, int nRequestID) { api->ReqParkedOrderAction(pParkedOrderAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqOrderAction(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputOrderActionField *pInputOrderAction, int nRequestID) { api->ReqOrderAction(pInputOrderAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQueryMaxOrderVolume(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQueryMaxOrderVolumeField *pQueryMaxOrderVolume, int nRequestID) { api->ReqQueryMaxOrderVolume(pQueryMaxOrderVolume,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqSettlementInfoConfirm(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcSettlementInfoConfirmField *pSettlementInfoConfirm, int nRequestID) { api->ReqSettlementInfoConfirm(pSettlementInfoConfirm,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqRemoveParkedOrder(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcRemoveParkedOrderField *pRemoveParkedOrder, int nRequestID) { api->ReqRemoveParkedOrder(pRemoveParkedOrder,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqRemoveParkedOrderAction(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcRemoveParkedOrderActionField *pRemoveParkedOrderAction, int nRequestID) { api->ReqRemoveParkedOrderAction(pRemoveParkedOrderAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqExecOrderInsert(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputExecOrderField *pInputExecOrder, int nRequestID) { api->ReqExecOrderInsert(pInputExecOrder,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqExecOrderAction(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputExecOrderActionField *pInputExecOrderAction, int nRequestID) { api->ReqExecOrderAction(pInputExecOrderAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqForQuoteInsert(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputForQuoteField *pInputForQuote, int nRequestID) { api->ReqForQuoteInsert(pInputForQuote,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQuoteInsert(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputQuoteField *pInputQuote, int nRequestID) { api->ReqQuoteInsert(pInputQuote,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQuoteAction(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputQuoteActionField *pInputQuoteAction, int nRequestID) { api->ReqQuoteAction(pInputQuoteAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqLockInsert(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputLockField *pInputLock, int nRequestID) { api->ReqLockInsert(pInputLock,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqBatchOrderAction(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputBatchOrderActionField *pInputBatchOrderAction, int nRequestID) { api->ReqBatchOrderAction(pInputBatchOrderAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqCombActionInsert(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputCombActionField *pInputCombAction, int nRequestID) { api->ReqCombActionInsert(pInputCombAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryOrder(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryOrderField *pQryOrder, int nRequestID) { api->ReqQryOrder(pQryOrder,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryTrade(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryTradeField *pQryTrade, int nRequestID) { api->ReqQryTrade(pQryTrade,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInvestorPosition(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInvestorPositionField *pQryInvestorPosition, int nRequestID) { api->ReqQryInvestorPosition(pQryInvestorPosition,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryTradingAccount(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryTradingAccountField *pQryTradingAccount, int nRequestID) { api->ReqQryTradingAccount(pQryTradingAccount,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInvestor(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInvestorField *pQryInvestor, int nRequestID) { api->ReqQryInvestor(pQryInvestor,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryTradingCode(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryTradingCodeField *pQryTradingCode, int nRequestID) { api->ReqQryTradingCode(pQryTradingCode,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInstrumentMarginRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInstrumentMarginRateField *pQryInstrumentMarginRate, int nRequestID) { api->ReqQryInstrumentMarginRate(pQryInstrumentMarginRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInstrumentCommissionRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInstrumentCommissionRateField *pQryInstrumentCommissionRate, int nRequestID) { api->ReqQryInstrumentCommissionRate(pQryInstrumentCommissionRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryExchange(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryExchangeField *pQryExchange, int nRequestID) { api->ReqQryExchange(pQryExchange,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryProduct(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryProductField *pQryProduct, int nRequestID) { api->ReqQryProduct(pQryProduct,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInstrument(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInstrumentField *pQryInstrument, int nRequestID) { api->ReqQryInstrument(pQryInstrument,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryDepthMarketData(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryDepthMarketDataField *pQryDepthMarketData, int nRequestID) { api->ReqQryDepthMarketData(pQryDepthMarketData,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQrySettlementInfo(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQrySettlementInfoField *pQrySettlementInfo, int nRequestID) { api->ReqQrySettlementInfo(pQrySettlementInfo,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryTransferBank(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryTransferBankField *pQryTransferBank, int nRequestID) { api->ReqQryTransferBank(pQryTransferBank,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInvestorPositionDetail(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInvestorPositionDetailField *pQryInvestorPositionDetail, int nRequestID) { api->ReqQryInvestorPositionDetail(pQryInvestorPositionDetail,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryNotice(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryNoticeField *pQryNotice, int nRequestID) { api->ReqQryNotice(pQryNotice,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQrySettlementInfoConfirm(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQrySettlementInfoConfirmField *pQrySettlementInfoConfirm, int nRequestID) { api->ReqQrySettlementInfoConfirm(pQrySettlementInfoConfirm,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInvestorPositionCombineDetail(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInvestorPositionCombineDetailField *pQryInvestorPositionCombineDetail, int nRequestID) { api->ReqQryInvestorPositionCombineDetail(pQryInvestorPositionCombineDetail,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryCFMMCTradingAccountKey(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryCFMMCTradingAccountKeyField *pQryCFMMCTradingAccountKey, int nRequestID) { api->ReqQryCFMMCTradingAccountKey(pQryCFMMCTradingAccountKey,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryEWarrantOffset(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryEWarrantOffsetField *pQryEWarrantOffset, int nRequestID) { api->ReqQryEWarrantOffset(pQryEWarrantOffset,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInvestorProductGroupMargin(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInvestorProductGroupMarginField *pQryInvestorProductGroupMargin, int nRequestID) { api->ReqQryInvestorProductGroupMargin(pQryInvestorProductGroupMargin,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryExchangeMarginRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryExchangeMarginRateField *pQryExchangeMarginRate, int nRequestID) { api->ReqQryExchangeMarginRate(pQryExchangeMarginRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryExchangeMarginRateAdjust(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryExchangeMarginRateAdjustField *pQryExchangeMarginRateAdjust, int nRequestID) { api->ReqQryExchangeMarginRateAdjust(pQryExchangeMarginRateAdjust,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryExchangeRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryExchangeRateField *pQryExchangeRate, int nRequestID) { api->ReqQryExchangeRate(pQryExchangeRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQrySecAgentACIDMap(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQrySecAgentACIDMapField *pQrySecAgentACIDMap, int nRequestID) { api->ReqQrySecAgentACIDMap(pQrySecAgentACIDMap,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryProductExchRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryProductExchRateField *pQryProductExchRate, int nRequestID) { api->ReqQryProductExchRate(pQryProductExchRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryProductGroup(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryProductGroupField *pQryProductGroup, int nRequestID) { api->ReqQryProductGroup(pQryProductGroup,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryMMInstrumentCommissionRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryMMInstrumentCommissionRateField *pQryMMInstrumentCommissionRate, int nRequestID) { api->ReqQryMMInstrumentCommissionRate(pQryMMInstrumentCommissionRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryMMOptionInstrCommRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryMMOptionInstrCommRateField *pQryMMOptionInstrCommRate, int nRequestID) { api->ReqQryMMOptionInstrCommRate(pQryMMOptionInstrCommRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInstrumentOrderCommRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInstrumentOrderCommRateField *pQryInstrumentOrderCommRate, int nRequestID) { api->ReqQryInstrumentOrderCommRate(pQryInstrumentOrderCommRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryOptionInstrTradeCost(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryOptionInstrTradeCostField *pQryOptionInstrTradeCost, int nRequestID) { api->ReqQryOptionInstrTradeCost(pQryOptionInstrTradeCost,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryOptionInstrCommRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryOptionInstrCommRateField *pQryOptionInstrCommRate, int nRequestID) { api->ReqQryOptionInstrCommRate(pQryOptionInstrCommRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryExecOrder(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryExecOrderField *pQryExecOrder, int nRequestID) { api->ReqQryExecOrder(pQryExecOrder,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryForQuote(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryForQuoteField *pQryForQuote, int nRequestID) { api->ReqQryForQuote(pQryForQuote,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryQuote(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryQuoteField *pQryQuote, int nRequestID) { api->ReqQryQuote(pQryQuote,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryLock(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryLockField *pQryLock, int nRequestID) { api->ReqQryLock(pQryLock,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryLockPosition(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryLockPositionField *pQryLockPosition, int nRequestID) { api->ReqQryLockPosition(pQryLockPosition,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryETFOptionInstrCommRate(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryETFOptionInstrCommRateField *pQryETFOptionInstrCommRate, int nRequestID) { api->ReqQryETFOptionInstrCommRate(pQryETFOptionInstrCommRate,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryLimitPosi(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryLimitPosiField *pQryLimitPosi, int nRequestID) { api->ReqQryLimitPosi(pQryLimitPosi,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInvestorLevel(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInvestorLevelField *pQryInvestorLevel, int nRequestID) { api->ReqQryInvestorLevel(pQryInvestorLevel,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryExecFreeze(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryExecFreezeField *pQryExecFreeze, int nRequestID) { api->ReqQryExecFreeze(pQryExecFreeze,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryLimitAmount(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryLimitAmountField *pQryLimitAmount, int nRequestID) { api->ReqQryLimitAmount(pQryLimitAmount,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryCombInstrumentGuard(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryCombInstrumentGuardField *pQryCombInstrumentGuard, int nRequestID) { api->ReqQryCombInstrumentGuard(pQryCombInstrumentGuard,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryCombAction(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryCombActionField *pQryCombAction, int nRequestID) { api->ReqQryCombAction(pQryCombAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryTransferSerial(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryTransferSerialField *pQryTransferSerial, int nRequestID) { api->ReqQryTransferSerial(pQryTransferSerial,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryAccountregister(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryAccountregisterField *pQryAccountregister, int nRequestID) { api->ReqQryAccountregister(pQryAccountregister,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryContractBank(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryContractBankField *pQryContractBank, int nRequestID) { api->ReqQryContractBank(pQryContractBank,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryParkedOrder(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryParkedOrderField *pQryParkedOrder, int nRequestID) { api->ReqQryParkedOrder(pQryParkedOrder,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryParkedOrderAction(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryParkedOrderActionField *pQryParkedOrderAction, int nRequestID) { api->ReqQryParkedOrderAction(pQryParkedOrderAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryTradingNotice(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryTradingNoticeField *pQryTradingNotice, int nRequestID) { api->ReqQryTradingNotice(pQryTradingNotice,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryBrokerTradingParams(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryBrokerTradingParamsField *pQryBrokerTradingParams, int nRequestID) { api->ReqQryBrokerTradingParams(pQryBrokerTradingParams,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryBrokerTradingAlgos(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryBrokerTradingAlgosField *pQryBrokerTradingAlgos, int nRequestID) { api->ReqQryBrokerTradingAlgos(pQryBrokerTradingAlgos,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQueryCFMMCTradingAccountToken(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQueryCFMMCTradingAccountTokenField *pQueryCFMMCTradingAccountToken, int nRequestID) { api->ReqQueryCFMMCTradingAccountToken(pQueryCFMMCTradingAccountToken,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqFromBankToFutureByFuture(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcReqTransferField *pReqTransfer, int nRequestID) { api->ReqFromBankToFutureByFuture(pReqTransfer,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqFromFutureToBankByFuture(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcReqTransferField *pReqTransfer, int nRequestID) { api->ReqFromFutureToBankByFuture(pReqTransfer,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQueryBankAccountMoneyByFuture(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcReqQueryAccountField *pReqQueryAccount, int nRequestID) { api->ReqQueryBankAccountMoneyByFuture(pReqQueryAccount,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqReserveOpenAccountTpdByFuture(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcReqReserveOpenAccountTpdField *pReqReserveOpenAccountTpd, int nRequestID) { api->ReqReserveOpenAccountTpdByFuture(pReqReserveOpenAccountTpd,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqSecuritiesDepositInterestByFuture(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcReqSecuritiesDepositInterestField *pReqSecuritiesDepositInterest, int nRequestID) { api->ReqSecuritiesDepositInterestByFuture(pReqSecuritiesDepositInterest,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqDayEndFileReadyByFuture(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcReqDayEndFileReadyField *pReqDayEndFileReady, int nRequestID) { api->ReqDayEndFileReadyByFuture(pReqDayEndFileReady,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqExecCombineOrderInsert(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputExecCombineOrderField *pInputExecCombineOrder, int nRequestID) { api->ReqExecCombineOrderInsert(pInputExecCombineOrder,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqExecCombineOrderAction(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputExecCombineOrderActionField *pInputExecCombineOrderAction, int nRequestID) { api->ReqExecCombineOrderAction(pInputExecCombineOrderAction,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryExecCombineOrder(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryExecCombineOrderField *pQryExecCombineOrder, int nRequestID) { api->ReqQryExecCombineOrder(pQryExecCombineOrder,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqInternalTransfer(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcInputInternalTransferField *pInputInternalTransfer, int nRequestID) { api->ReqInternalTransfer(pInputInternalTransfer,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryInternalTransfer(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryInternalTransferField *pQryInternalTransfer, int nRequestID) { api->ReqQryInternalTransfer(pQryInternalTransfer,nRequestID); }
DLL_EXPORT_C_DECL void WINAPI tReqQryFutureTradingAccount(ctp_sopt::CThostFtdcTraderApi*api, CThostFtdcQryFutureTradingAccountField *pQryFutureTradingAccount, int nRequestID) { api->ReqQryFutureTradingAccount(pQryFutureTradingAccount,nRequestID); }

// reg
DLL_EXPORT_C_DECL void WINAPI tSetOnFrontConnected(Trade *spi, void* func) { spi->_OnFrontConnected = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnFrontDisconnected(Trade *spi, void* func) { spi->_OnFrontDisconnected = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnHeartBeatWarning(Trade *spi, void* func) { spi->_OnHeartBeatWarning = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspAuthenticate(Trade *spi, void* func) { spi->_OnRspAuthenticate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspUserLogin(Trade *spi, void* func) { spi->_OnRspUserLogin = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspUserLogout(Trade *spi, void* func) { spi->_OnRspUserLogout = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspUserPasswordUpdate(Trade *spi, void* func) { spi->_OnRspUserPasswordUpdate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspTradingAccountPasswordUpdate(Trade *spi, void* func) { spi->_OnRspTradingAccountPasswordUpdate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspOrderInsert(Trade *spi, void* func) { spi->_OnRspOrderInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspParkedOrderInsert(Trade *spi, void* func) { spi->_OnRspParkedOrderInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspParkedOrderAction(Trade *spi, void* func) { spi->_OnRspParkedOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspOrderAction(Trade *spi, void* func) { spi->_OnRspOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQueryMaxOrderVolume(Trade *spi, void* func) { spi->_OnRspQueryMaxOrderVolume = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspSettlementInfoConfirm(Trade *spi, void* func) { spi->_OnRspSettlementInfoConfirm = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspRemoveParkedOrder(Trade *spi, void* func) { spi->_OnRspRemoveParkedOrder = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspRemoveParkedOrderAction(Trade *spi, void* func) { spi->_OnRspRemoveParkedOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspExecOrderInsert(Trade *spi, void* func) { spi->_OnRspExecOrderInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspExecOrderAction(Trade *spi, void* func) { spi->_OnRspExecOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspForQuoteInsert(Trade *spi, void* func) { spi->_OnRspForQuoteInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQuoteInsert(Trade *spi, void* func) { spi->_OnRspQuoteInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQuoteAction(Trade *spi, void* func) { spi->_OnRspQuoteAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspLockInsert(Trade *spi, void* func) { spi->_OnRspLockInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspBatchOrderAction(Trade *spi, void* func) { spi->_OnRspBatchOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspCombActionInsert(Trade *spi, void* func) { spi->_OnRspCombActionInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryOrder(Trade *spi, void* func) { spi->_OnRspQryOrder = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryTrade(Trade *spi, void* func) { spi->_OnRspQryTrade = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInvestorPosition(Trade *spi, void* func) { spi->_OnRspQryInvestorPosition = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryTradingAccount(Trade *spi, void* func) { spi->_OnRspQryTradingAccount = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInvestor(Trade *spi, void* func) { spi->_OnRspQryInvestor = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryTradingCode(Trade *spi, void* func) { spi->_OnRspQryTradingCode = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInstrumentMarginRate(Trade *spi, void* func) { spi->_OnRspQryInstrumentMarginRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInstrumentCommissionRate(Trade *spi, void* func) { spi->_OnRspQryInstrumentCommissionRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryExchange(Trade *spi, void* func) { spi->_OnRspQryExchange = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryProduct(Trade *spi, void* func) { spi->_OnRspQryProduct = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInstrument(Trade *spi, void* func) { spi->_OnRspQryInstrument = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryDepthMarketData(Trade *spi, void* func) { spi->_OnRspQryDepthMarketData = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQrySettlementInfo(Trade *spi, void* func) { spi->_OnRspQrySettlementInfo = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryTransferBank(Trade *spi, void* func) { spi->_OnRspQryTransferBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInvestorPositionDetail(Trade *spi, void* func) { spi->_OnRspQryInvestorPositionDetail = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryNotice(Trade *spi, void* func) { spi->_OnRspQryNotice = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQrySettlementInfoConfirm(Trade *spi, void* func) { spi->_OnRspQrySettlementInfoConfirm = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInvestorPositionCombineDetail(Trade *spi, void* func) { spi->_OnRspQryInvestorPositionCombineDetail = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryCFMMCTradingAccountKey(Trade *spi, void* func) { spi->_OnRspQryCFMMCTradingAccountKey = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryEWarrantOffset(Trade *spi, void* func) { spi->_OnRspQryEWarrantOffset = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInvestorProductGroupMargin(Trade *spi, void* func) { spi->_OnRspQryInvestorProductGroupMargin = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryExchangeMarginRate(Trade *spi, void* func) { spi->_OnRspQryExchangeMarginRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryExchangeMarginRateAdjust(Trade *spi, void* func) { spi->_OnRspQryExchangeMarginRateAdjust = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryExchangeRate(Trade *spi, void* func) { spi->_OnRspQryExchangeRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQrySecAgentACIDMap(Trade *spi, void* func) { spi->_OnRspQrySecAgentACIDMap = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryProductExchRate(Trade *spi, void* func) { spi->_OnRspQryProductExchRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryProductGroup(Trade *spi, void* func) { spi->_OnRspQryProductGroup = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryMMInstrumentCommissionRate(Trade *spi, void* func) { spi->_OnRspQryMMInstrumentCommissionRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryMMOptionInstrCommRate(Trade *spi, void* func) { spi->_OnRspQryMMOptionInstrCommRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInstrumentOrderCommRate(Trade *spi, void* func) { spi->_OnRspQryInstrumentOrderCommRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryOptionInstrTradeCost(Trade *spi, void* func) { spi->_OnRspQryOptionInstrTradeCost = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryOptionInstrCommRate(Trade *spi, void* func) { spi->_OnRspQryOptionInstrCommRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryExecOrder(Trade *spi, void* func) { spi->_OnRspQryExecOrder = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryForQuote(Trade *spi, void* func) { spi->_OnRspQryForQuote = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryQuote(Trade *spi, void* func) { spi->_OnRspQryQuote = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryLock(Trade *spi, void* func) { spi->_OnRspQryLock = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryLockPosition(Trade *spi, void* func) { spi->_OnRspQryLockPosition = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryETFOptionInstrCommRate(Trade *spi, void* func) { spi->_OnRspQryETFOptionInstrCommRate = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryLimitPosi(Trade *spi, void* func) { spi->_OnRspQryLimitPosi = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInvestorLevel(Trade *spi, void* func) { spi->_OnRspQryInvestorLevel = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryExecFreeze(Trade *spi, void* func) { spi->_OnRspQryExecFreeze = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryLimitAmount(Trade *spi, void* func) { spi->_OnRspQryLimitAmount = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryCombInstrumentGuard(Trade *spi, void* func) { spi->_OnRspQryCombInstrumentGuard = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryCombAction(Trade *spi, void* func) { spi->_OnRspQryCombAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryTransferSerial(Trade *spi, void* func) { spi->_OnRspQryTransferSerial = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryAccountregister(Trade *spi, void* func) { spi->_OnRspQryAccountregister = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspError(Trade *spi, void* func) { spi->_OnRspError = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnOrder(Trade *spi, void* func) { spi->_OnRtnOrder = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnTrade(Trade *spi, void* func) { spi->_OnRtnTrade = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnOrderInsert(Trade *spi, void* func) { spi->_OnErrRtnOrderInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnOrderAction(Trade *spi, void* func) { spi->_OnErrRtnOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnInstrumentStatus(Trade *spi, void* func) { spi->_OnRtnInstrumentStatus = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnBulletin(Trade *spi, void* func) { spi->_OnRtnBulletin = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnTradingNotice(Trade *spi, void* func) { spi->_OnRtnTradingNotice = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnErrorConditionalOrder(Trade *spi, void* func) { spi->_OnRtnErrorConditionalOrder = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnExecOrder(Trade *spi, void* func) { spi->_OnRtnExecOrder = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnExecOrderInsert(Trade *spi, void* func) { spi->_OnErrRtnExecOrderInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnExecOrderAction(Trade *spi, void* func) { spi->_OnErrRtnExecOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnForQuoteInsert(Trade *spi, void* func) { spi->_OnErrRtnForQuoteInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnQuote(Trade *spi, void* func) { spi->_OnRtnQuote = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnQuoteInsert(Trade *spi, void* func) { spi->_OnErrRtnQuoteInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnQuoteAction(Trade *spi, void* func) { spi->_OnErrRtnQuoteAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnForQuoteRsp(Trade *spi, void* func) { spi->_OnRtnForQuoteRsp = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnCFMMCTradingAccountToken(Trade *spi, void* func) { spi->_OnRtnCFMMCTradingAccountToken = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnLock(Trade *spi, void* func) { spi->_OnRtnLock = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnLockInsert(Trade *spi, void* func) { spi->_OnErrRtnLockInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnBatchOrderAction(Trade *spi, void* func) { spi->_OnErrRtnBatchOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnCombAction(Trade *spi, void* func) { spi->_OnRtnCombAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnCombActionInsert(Trade *spi, void* func) { spi->_OnErrRtnCombActionInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryContractBank(Trade *spi, void* func) { spi->_OnRspQryContractBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryParkedOrder(Trade *spi, void* func) { spi->_OnRspQryParkedOrder = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryParkedOrderAction(Trade *spi, void* func) { spi->_OnRspQryParkedOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryTradingNotice(Trade *spi, void* func) { spi->_OnRspQryTradingNotice = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryBrokerTradingParams(Trade *spi, void* func) { spi->_OnRspQryBrokerTradingParams = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryBrokerTradingAlgos(Trade *spi, void* func) { spi->_OnRspQryBrokerTradingAlgos = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQueryCFMMCTradingAccountToken(Trade *spi, void* func) { spi->_OnRspQueryCFMMCTradingAccountToken = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnFromBankToFutureByBank(Trade *spi, void* func) { spi->_OnRtnFromBankToFutureByBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnFromFutureToBankByBank(Trade *spi, void* func) { spi->_OnRtnFromFutureToBankByBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnRepealFromBankToFutureByBank(Trade *spi, void* func) { spi->_OnRtnRepealFromBankToFutureByBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnRepealFromFutureToBankByBank(Trade *spi, void* func) { spi->_OnRtnRepealFromFutureToBankByBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnFromBankToFutureByFuture(Trade *spi, void* func) { spi->_OnRtnFromBankToFutureByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnFromFutureToBankByFuture(Trade *spi, void* func) { spi->_OnRtnFromFutureToBankByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnRepealFromBankToFutureByFutureManual(Trade *spi, void* func) { spi->_OnRtnRepealFromBankToFutureByFutureManual = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnRepealFromFutureToBankByFutureManual(Trade *spi, void* func) { spi->_OnRtnRepealFromFutureToBankByFutureManual = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnQueryBankBalanceByFuture(Trade *spi, void* func) { spi->_OnRtnQueryBankBalanceByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnBankToFutureByFuture(Trade *spi, void* func) { spi->_OnErrRtnBankToFutureByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnFutureToBankByFuture(Trade *spi, void* func) { spi->_OnErrRtnFutureToBankByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnRepealBankToFutureByFutureManual(Trade *spi, void* func) { spi->_OnErrRtnRepealBankToFutureByFutureManual = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnRepealFutureToBankByFutureManual(Trade *spi, void* func) { spi->_OnErrRtnRepealFutureToBankByFutureManual = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnQueryBankBalanceByFuture(Trade *spi, void* func) { spi->_OnErrRtnQueryBankBalanceByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnRepealFromBankToFutureByFuture(Trade *spi, void* func) { spi->_OnRtnRepealFromBankToFutureByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnRepealFromFutureToBankByFuture(Trade *spi, void* func) { spi->_OnRtnRepealFromFutureToBankByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspFromBankToFutureByFuture(Trade *spi, void* func) { spi->_OnRspFromBankToFutureByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspFromFutureToBankByFuture(Trade *spi, void* func) { spi->_OnRspFromFutureToBankByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQueryBankAccountMoneyByFuture(Trade *spi, void* func) { spi->_OnRspQueryBankAccountMoneyByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnOpenAccountByBank(Trade *spi, void* func) { spi->_OnRtnOpenAccountByBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnCancelAccountByBank(Trade *spi, void* func) { spi->_OnRtnCancelAccountByBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnChangeAccountByBank(Trade *spi, void* func) { spi->_OnRtnChangeAccountByBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnResOpenAccConfirmTpdByBank(Trade *spi, void* func) { spi->_OnRtnResOpenAccConfirmTpdByBank = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspReserveOpenAccountTpdByFuture(Trade *spi, void* func) { spi->_OnRspReserveOpenAccountTpdByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspSecuritiesDepositInterestByFuture(Trade *spi, void* func) { spi->_OnRspSecuritiesDepositInterestByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspDayEndFileReadyByFuture(Trade *spi, void* func) { spi->_OnRspDayEndFileReadyByFuture = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspExecCombineOrderInsert(Trade *spi, void* func) { spi->_OnRspExecCombineOrderInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspExecCombineOrderAction(Trade *spi, void* func) { spi->_OnRspExecCombineOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryExecCombineOrder(Trade *spi, void* func) { spi->_OnRspQryExecCombineOrder = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnExecCombineOrderAction(Trade *spi, void* func) { spi->_OnErrRtnExecCombineOrderAction = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnErrRtnExecCombineOrderInsert(Trade *spi, void* func) { spi->_OnErrRtnExecCombineOrderInsert = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnExecCombineOrder(Trade *spi, void* func) { spi->_OnRtnExecCombineOrder = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspInternalTransfer(Trade *spi, void* func) { spi->_OnRspInternalTransfer = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRtnInternalTransfer(Trade *spi, void* func) { spi->_OnRtnInternalTransfer = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryInternalTransfer(Trade *spi, void* func) { spi->_OnRspQryInternalTransfer = func; }
DLL_EXPORT_C_DECL void WINAPI tSetOnRspQryFutureTradingAccount(Trade *spi, void* func) { spi->_OnRspQryFutureTradingAccount = func; }
